package com.gezi.admin.module.code.gentable.table.model;

import com.gezi.admin.module.code.gentable.column.model.CodeGenTableColumnAddParamModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import java.util.List;

/**
 * @Author 格子代码
 * @createDate 2024/2/10 09:00
 * @contact 1424529270@qq.com
 */
@Data
public class CodeGenTableEditParamModel extends CodeGenTableAddParamModel {

    @NotBlank(message = "数据不存在，请刷新重试")
    @ApiModelProperty(value = "id")
    private String id = "";

    @ApiModelProperty(value = "表名称")
    private String tableName;

    @ApiModelProperty(value = "表描述")
    private String tableComment;

    @ApiModelProperty(value = "使用的模板（crud单表操作 tree树表操作）")
    private String tplCategory;

    @ApiModelProperty(value = "生成包路径")
    private String packageName;

    @ApiModelProperty(value = "实体类名称")
    private String className;

    @ApiModelProperty(value = "实体类描述")
    private String classRemark;

    @ApiModelProperty(value = "作者")
    private String author;

    @ApiModelProperty(value = "接口名称")
    private String jiekouPath;

    @ApiModelProperty(value = "生成代码方式（0zip压缩包 1自定义路径）")
    private String genType;

    @ApiModelProperty(value = "生成路径（不填默认项目路径）")
    private String genPath;

    @ApiModelProperty(value = "其它生成选项")
    private String options;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "父级菜单id")
    private String parentMenuId;

    @ApiModelProperty(value = "表格是否选择")
    private Boolean tableIsSelect;

    @ApiModelProperty(value = "表格是否导入")
    private Boolean tableIsImport;

    @ApiModelProperty(value = "表格是否导出")
    private Boolean tableIsExport;

    @Valid
    @ApiModelProperty(value = "列")
    private List<CodeGenTableColumnAddParamModel> columns;
}